class Solution:
    def reverseBits(self, n: int) -> int:
        """
        使用迭代方法实现二进制位反转
        时间复杂度：O(1)，因为固定32次循环
        空间复杂度：O(1)，只使用一个变量
        """
        res = 0
        for _ in range(32):
            res = (res << 1) | (n & 1)  # 将res左移一位，并加上n的最低位
            n >>= 1  # n右移一位
        return res 
    
#代码解释
#循环处理：通过 32 次循环确保处理所有位。
#位操作：
#res << 1：将当前结果左移一位，为新位腾出位置。
#n & 1：提取n的最低位。
#res | (n & 1)：将提取的位添加到结果中。
#n >>= 1：右移n以处理下一位。
#这种方法时间复杂度为 O (1)，空间复杂度为 O (1)，适用于所有 32 位无符号整数的位反转操作。